/**
 * 通用响应数据结构
 */
export interface ResponseData<T = any> {
  code: number;
  msg: string;
  data: T;
}

/**
 * 分页查询参数
 */
export interface BaseQuery {
  pageNum: number;
  pageSize: number;
  [key: string]: any;
}

/**
 * 分页响应数据
 */
export interface PageData<T> {
  total: number;
  rows: T[];
}

/**
 * 分页响应数据结构
 */
export interface PageResponseData<T = any> {
  code: number;
  data: {
    rows: T[];
    total: number;
  };
  msg: string;
}

/**
 * 日期范围查询参数
 */
export interface DateRangeQuery extends BaseQuery {
  beginTime?: string;
  endTime?: string;
}

/**
 * 分页查询基础参数
 */
export interface BaseQuery {
  pageNum: number;
  pageSize: number;
}

/**
 * 分页结果
 */
export interface PageResult<T> {
  total: number;
  rows: T[];
}

/**
 * 通用响应对象
 */
export interface ResponseResult<T> {
  code: number;
  msg: string;
  data: T;
}
